import java.io.IOException;

import parserRecursivo.Parser;
import parserTable.*;

import lexer.Lexer;


public class Compilador {

	public static void main(String[] args) throws IOException {

		String strFile = null;
		if (args.length >= 2 || (!args[0].equals("-tabela") && !args[0].equals("-recursivo"))) {
			strFile = args[1];

			if (args[0].equals("-tabela"))
			{
				Lexer lex = new Lexer(strFile);
				lex.goLexer(false);
				if (!lex.temErros())
				{
					ParserTable ps = new ParserTable(lex);
					ps.goParser();
//					if (!ps.temErros())
//					{
//						System.out.println("1");
//					}
				}
			}
			else if (args[0].equals("-recursivo"))
			{
				Lexer lex = new Lexer(strFile);
				lex.goLexer(false);
				if (!lex.temErros())
				{
					Parser p = new Parser(lex.getListAllTokens());
					p.Start();
					if (!p.temErros())
					{
						System.out.println("1");
					}
				}
			}
		}
		else
		{
			System.out.println("Usar: Compilador <modo: -tabela | -recursivo> <codigo fonte>");
		}
	}
}
